using QFramework;
using UnityEngine;

public interface IGameModel : IModel
{
    BindableProperty<int> ReconnectionTimeout { get; }
    GameObject CargoPrefab { get; set; }
    GameObject Cargo_1200_1200_1050_Prefab { get; set; }
    GameObject Cargo_1100_1100_1100_Prefab { get; set; }
    StandardShelfData ShelfData_Thin { get; set; }
    StandardShelfData ShelfData_Wide { get; set; }
}

public class GameModel : AbstractModel, IGameModel
{
    public BindableProperty<int> ReconnectionTimeout { get; } = new();
    public GameObject CargoPrefab { get; set; }
    public GameObject Cargo_1200_1200_1050_Prefab { get; set; }
    public GameObject Cargo_1100_1100_1100_Prefab { get; set; }
    public StandardShelfData ShelfData_Thin { get; set; }
    public StandardShelfData ShelfData_Wide { get; set; }

    protected override void OnInit()
    {
        ReconnectionTimeout.Value = 144;
    }
}
